package com.thwj.project.biz.domain;

    import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.thwj.common.annotation.Excel;
import lombok.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

;

/**
 * 用户会员记录对象 biz_user_vip
 *
 * @author generate
 * @date 2023-06-16
 */

@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("biz_user_vip")
public class UserVip extends Model<UserVip>{
private static final long serialVersionUID=1L;

    /** 主键 */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 用户id */
            @Excel(name = "用户id")
    private Long userId;

    /** 会员金额 */
            @Excel(name = "会员金额")
    private BigDecimal amount;

    /** 会员开始时间 */
            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
            @Excel(name = "会员开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date vipStartDate;

    /** 会员截止时间 */
            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
            @Excel(name = "会员截止时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date vipEndDate;

    /** 会员状态（1：待生效  2：生效中 3：已结束） */
            @Excel(name = "会员状态", readConverterExp = "1=：待生效,2=：生效中,3=：已结束")
    private Integer status;

    /** 订单编号 V打头 会员订单 */
            @Excel(name = "订单编号 V打头 会员订单")
    private String orderNumber;

            private Date payDate;

    /** 创建时间 */
            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
            @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;




    @Override
    public Serializable pkVal() {
        return this.id;
    }
}
